package edu.nwpu.service;


import edu.nwpu.pojo.User;

import java.util.List;
import java.util.Map;

public interface UserService {

    /**
     * 用户登录
     * @param username
     * @param password
     * @return  操作执行状态
     */
    public Map<String, Object> login(String username, String password);

    /**
     * 用户注册
     * @param username
     * @param password
     * @param phoneNo
     * @return  操作执行状态
     */
    public Map<String, Object> register(String username, String password, String phoneNo);

    /**
     * 通过id获取用户
     * @param id 需要获取的用户
     * @return
     */
    public User getUserById(Long id);

    /**
     * 通过姓名和密码获取用户
     * @param name
     * @param password
     * @return
     */
    public User getUserByNameAndPassword(String name, String password);

    /**
     * 通过id和密码获取用户
     * @param id
     * @param password
     * @return
     */
    public User getUserByIdAndPassword(Long id, String password);

    /**
     * 更新用户信息
     * @param user
     * @return
     */
    public Map<String, Object> updateUserInfo(User user);

    public Map<String, Object> updateUserPassword(Long id, String oldPwd, String newPwd, String newPwdRe);

    /**
     * 获取所有用户
     * @return 用户列表
     */
    @Deprecated
    public List<User> getAllUsers();

}
